package cn.rick.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 客户海
 * </p>
 *
 * @author house_store
 * @since 2022-10-29 10:40:00
 */
@Getter
@Setter
@TableName("customer_sea")
@ApiModel(value = "CustomerSea对象", description = "客户海")
@EqualsAndHashCode
public class CustomerSea implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    @ExcelProperty("客户id")
    private Long id;

    @ApiModelProperty("客户名")
    @TableField("name")
    @ExcelProperty("客户名")
    private String name;

    @ApiModelProperty("客户负责人")
    @TableField("director")
    @ExcelProperty("客户负责人")
    private String director;

    @ApiModelProperty("客户电话号码")
    @TableField("phone")
    @ExcelProperty("客户电话号码")
    private String phone;

    @ApiModelProperty("客户性别（关联字典）")
    @TableField("sex")
    @ExcelProperty("客户性别（关联字典）")
    private String sex;

    @ApiModelProperty("年龄段（关联字典）")
    @TableField("age")
    @ExcelProperty("年龄段（关联字典）")
    private String age;

    @ApiModelProperty("客户来源（关联字典）")
    @TableField("source")
    @ExcelProperty("客户来源（关联字典）")
    private String source;

    @ApiModelProperty("客户性质（关联字典）")
    @TableField("nature")
    @ExcelProperty("客户性质（关联字典）")
    private String nature;

    @ApiModelProperty("成交总额")
    @TableField("total_turnover")
    @ExcelProperty("成交总额")
    private BigDecimal totalTurnover;

    @ApiModelProperty("删除标志")
    @TableField("del_flag")
    @TableLogic
    @ExcelIgnore
    private String delFlag;

    @TableField("create_by")
    @ExcelProperty("创建者")
    private String createBy;

    @TableField("create_time")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @TableField("update_by")
    @ExcelProperty("更新者")
    private String updateBy;

    @TableField("update_time")
    @ExcelProperty("更新时间")
    private LocalDateTime updateTime;

    @ApiModelProperty("备注")
    @TableField("remark")
    @ExcelProperty("备注")
    private String remark;
}
